package com.briup.pts.domain.bean;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.PastOrPresent;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 动物指标记录表
 * @TableName index_record
 */
@Data
@Schema(description="动物指标记录")
public class IndexRecord implements Serializable {

    /**
     * 记录id
     */
    @Schema(description="记录id")
    private Integer irdId;
    /**
     * 重量
     */
    @Schema(description="重量")
    @NotBlank(message = "动物体重必须记录")
    private String irdWeight;
    /**
     * 记录时间
     */
    @Schema(description="记录时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @PastOrPresent(message = "指标记录实现不能晚于当前时间")
    private LocalDateTime irdTime;
    /**
     * 是否健康 健康,不健康
     */
    @Schema(description="是否健康 健康,不健康")
    @NotBlank(message = "动物健康状态必须记录")
    private String irdHealthy;
    /**
     * 体温
     */
    @Schema(description="体温")
    @NotBlank(message = "动物体温必须记录")
    private String irdTemperature;
    /**
     * 呼吸频率
     */
    @Schema(description="呼吸频率")
    @NotBlank(message = "动物呼吸频率必须记录")
    private String irdBreathing;
    /**
     * 心率
     */
    @Schema(description="心率")
    @NotBlank(message = "动物心率必须记录")
    private String irdHeartRate;
    /**
     * 动物外键
     */
    @Schema(description="动物外键")
    @NotBlank(message = "必须指定当前记录对应的动物")
    private String irdAnimalId;
}
